var isSymmetric = function (root) {
    if (root === null) {
        return true; // 空树认为是对称的
    }

    function isMirror(left, right) {
        if (left === null && right === null) {
            return true; // 左右子树都为空，认为是对称的
        }
        if (left === null || right === null) {
            return false; // 左右子树一个为空一个不为空，认为不对称
        }
        if (left.val !== right.val) {
            return false; // 左右子树的节点值不相同，认为不对称
        }
        return isMirror(left.left, right.right) && isMirror(left.right, right.left); // 递归判断左右子树的对称性
    }

    return isMirror(root.left, root.right);
};